设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9654|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, R) u  z4 O5 K1 o1 v2 S4 M* J
: {: @. l% \& D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: p$ k. E1 m" E5 [2 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& x: z6 t% r# O$ R, G7 \( Sswarm.SignatureNotFoundException
9 u: M% \" S$ _        at swarm.Selector.<init>(Selector.java:76)
5 _1 t* }1 Z9 B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) B, D+ M3 g" r# g: i2 }
        at ActionGroupDemo.main(ActionGroupDemo.java:67), J. v& n& }: R/ m, F7 ]

9 s% [9 H' [; E/ J8 e" z2 i' t7 l4 A3 n3 z
import swarm.objectbase.SwarmImpl;
) M5 ]' n; |2 S8 P& \import swarm.objectbase.Swarm;
2 R9 w6 z5 e/ B; o. O. [9 W5 mimport swarm.activity.ScheduleImpl;' q4 _+ a7 I4 K6 [
import swarm.activity.Activity;. O0 X# O2 U8 b4 G7 Y
import swarm.activity.ActionGroupImpl;
1 \% Z  D4 Z7 `import swarm.collections.ListImpl;, W* x- [& {- i0 }! w
import swarm.defobj.Zone;
5 l, H7 S& N! himport swarm.Globals;" H& F9 @" _  o' |6 J  t
import swarm.Selector;
" J  l) t* u" h; K; Gimport swarm.activity.ActionGroup; $ M$ I( Y- Z; o! B
class Agent {: n$ V" s/ P# ^5 q$ Y7 A5 c
        char id;- P+ O- t0 k. y3 C
4 \; @0 h8 L1 i- m+ n$ B% z, A7 |
        Agent(char id) {/ w6 g6 B/ t$ ]& F: U0 |8 W5 H, @
                this.id = id;
* n) \* {8 V( S* x4 A        }
7 O1 {3 c' W$ f3 z5 j  D/ K& f; f: j3 W/ i% N
        public void agentStep() {
4 g* M. m4 r6 ~( ?; M  |                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 g4 G) M4 n6 V2 j% J8 @- s8 x' U        }
) A9 M, W( T& }+ o8 I}
# D3 h# w+ g" {' U9 i- C* \8 a5 d2 ?* ^
public class ActionGroupDemo extends SwarmImpl {
. u8 P3 u9 }" O) Y7 M+ q        ScheduleImpl schedule;$ d) }2 q1 W0 s7 e# {( |4 e' o) u
        ActionGroupImpl actionGroup;
; u$ d: Q2 L9 [- b        ListImpl list;
: ?- n0 }+ C8 B, u" K3 v& K        char Id = 'a';4 S) u  l+ s3 a8 o
; T$ f" j1 Q3 `& _
        ActionGroupDemo(Zone aZone) {
& ?1 r& l' ?3 C- q8 t                super(aZone);
# i: s0 z! m8 c- A! D* S3 T8 ]                list = new ListImpl(aZone);
+ w6 j9 E% o$ n& S( H# S/ a                swarmSetp();4 k  L6 K& E2 u& b3 `& `; O
                actionGroup = new ActionGroupImpl(aZone);' _3 S. A, @: G
                schedule = new ScheduleImpl(aZone);0 {8 w' h9 h( k) `+ S+ e" Z0 c: y  ~
                try {
- F/ Y/ [9 P: ~) U& W+ x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 [4 H7 a" P: I" H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- h) ~+ X, P; W/ w" ~7 G# b" |4 T% O
                        6 k" z& g* x0 ?$ T% q4 v; Z3 M
                        actionGroup.createActionForEach$message(list, agentSel);
; ]6 r2 ~" B! j7 l3 V                        actionGroup.createActionTo$message(this, swarmSel);
5 u( s% b9 P4 g                        schedule.at$createAction(0, actionGroup);
3 `4 }1 g7 n, P0 ~  h9 b                        schedule.at$createAction(1, actionGroup);
. a" K$ T4 x8 J) l/ s  }% m; _+ T                        schedule.at$createAction(2, actionGroup);3 c# A- N7 N8 ?: Y; b  \
! A3 ], e' I+ M: n
                } catch (Exception e) {8 w# l" V! `' r1 d! S0 L
                        e.printStackTrace(System.err);
/ i( v2 l( f8 W7 K  q: n3 G, t                        //System.out.println(e);
( Y5 ~8 y0 d% m( i# q# a; E" T                        System.exit(1);) g6 X, L7 r% y. K8 i' P
                }
. S: x3 i# E+ p& g6 m/ _
  e$ t8 Z. Z' I/ S7 {2 M; C& e2 s+ a+ w. n) p8 b" E
        }. n, b5 ^# i' x* K  e4 h
7 Y1 \9 {% ~9 S# K$ X# u
        private void swarmSetp() {
! [+ N- ]% v8 l                list.addLast(new Agent(Id));2 y; d- C) I- ?1 I1 W
                Id++;! t( w% a; H( D& R( @2 X. O
        }
6 L. T9 t. ?/ K2 E' z
( h6 _  H0 p) Y        public Activity activateIn(Swarm context) {
9 l* [1 ?) h$ d# N' \) q: e5 L4 z                super.activateIn(context);* F0 r6 Z+ d6 Z. t6 [
                schedule.activateIn(this);
* _* S( S  h6 k8 ]5 _                return getActivity();1 V/ d+ M+ u2 D+ U6 n6 v5 g, p
        }
. @  v, W& g) g! Y2 W" y3 Z: Q/ E4 N1 g; Q
        public static void main(String[] args) {
3 j: r# ?2 E" W6 n. n1 b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 g* [: z- Y  L7 I" L6 H2 L* @# @
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 N7 ]: R8 g3 r6 D& D: J9 y& g
                swarms.buildObjects();" C0 x# T" w. _, i
                swarms.buildActions();
6 G4 @- b& F, T                swarms.activateIn(null).run();/ Z; A( x, @6 D- }
        }
, }, J3 t/ ]9 X& [5 Q6 [$ o7 Z6 h, v3 `: h
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-5-18 09:35 , Processed in 0.016544 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表