设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6177|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& X& S2 w: s8 T8 U% k, V1 A1 |$ ]3 ?& s. R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 Z) Z! B- C. `4 k: e7 Q& ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 o9 P  s/ t# v8 o# u$ c5 a1 J
swarm.SignatureNotFoundException- k- U  `$ w$ w4 Z: Q/ S9 q
        at swarm.Selector.<init>(Selector.java:76)7 m: R, c; e; T* Z# |( z1 b. Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ K6 H4 ^: `4 Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 p2 ?  S+ a& [  R$ `' i8 S' C4 m6 F! {6 b* O1 Y6 G
$ i& K! S* H1 k1 Q0 X3 D2 t
import swarm.objectbase.SwarmImpl;  E0 M, o6 J4 [+ o( V7 a* Q( c# M
import swarm.objectbase.Swarm;
6 R# g. D+ ?/ B* D+ W1 qimport swarm.activity.ScheduleImpl;8 H4 d: H$ O0 c# F
import swarm.activity.Activity;
7 O. q/ B9 P' i+ ~' Q2 ximport swarm.activity.ActionGroupImpl;
8 R0 M& {/ _& n0 H8 l* ?. jimport swarm.collections.ListImpl;) d% [2 i# }( s9 t; W) v
import swarm.defobj.Zone; . L) ?$ O3 v+ L6 z
import swarm.Globals;
; M) ]. C+ A/ Iimport swarm.Selector;
2 u+ f5 I& y) w) I! k- y4 k! |. z1 y1 ]8 oimport swarm.activity.ActionGroup;
+ O( w6 o$ r! m4 Vclass Agent {5 v- V/ o% S9 C5 l% f0 ?, y0 n
        char id;
) `- e  \6 y' b7 X  P7 \8 R( h4 C9 q( l( `/ }
        Agent(char id) {
/ Q" {+ B; o. @8 |8 E) X! ~                this.id = id;0 X9 y( E! E( B
        }
9 a% e3 f( x8 s# A: r' S( z# r
) P, ~& w" D0 k1 L1 y- H( Y        public void agentStep() {3 m/ z! D( ~( a$ k1 d) S! s
                System.out.println(id + ":" + Globals.env.getCurrentTime());0 d& G1 g& s& p! e$ L
        }; u6 i1 l3 u  ]! P3 D9 q% F# M
}  _* U3 F5 ?. O* T2 n0 j2 T6 X

9 E6 U. ^: z- F2 O/ v" }8 d' Qpublic class ActionGroupDemo extends SwarmImpl {
* l8 a4 @9 c* Z6 i        ScheduleImpl schedule;
8 F, T* ^7 ^6 ^/ \- ?$ k- L& w, m        ActionGroupImpl actionGroup;& I% w! n% f6 [5 A
        ListImpl list;
; Y* T- }" `! {; e. Q        char Id = 'a';+ G9 s1 @9 ^+ I8 P3 F) x

; ]2 b( e8 B$ x/ K  {0 Q        ActionGroupDemo(Zone aZone) {
; c8 C! V( k  d  _! f5 B                super(aZone);6 `7 r& Z% G: u8 X
                list = new ListImpl(aZone);
- G  z* ~% B9 v4 k, [( B3 V                swarmSetp();
- q) c# h7 {$ v! O5 X                actionGroup = new ActionGroupImpl(aZone);$ Z/ {. D+ ^% C7 m" \8 g
                schedule = new ScheduleImpl(aZone);5 \+ {! N# z2 C  j
                try {
0 x9 z, w5 K$ W: I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ y5 ?) Z$ [& w                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 [3 h$ i* u) V
                        
  D+ Z: M( {8 l- ~                        actionGroup.createActionForEach$message(list, agentSel);
2 U( x9 J9 _/ I  }                        actionGroup.createActionTo$message(this, swarmSel);
4 J4 k, P1 Z. o" a- n3 Y                        schedule.at$createAction(0, actionGroup);3 o$ _7 r3 w* W# ~& ]0 r* n
                        schedule.at$createAction(1, actionGroup);& `& z1 b# q! R0 |( p0 f
                        schedule.at$createAction(2, actionGroup);2 L% ~/ M9 G1 M) E; o8 x/ e

# h0 Z: U, I+ A, k                } catch (Exception e) {
& a8 E" u" S, v: s                        e.printStackTrace(System.err);- z' v/ U1 b8 Z' D
                        //System.out.println(e);0 j7 i" w4 I0 x, a
                        System.exit(1);
# D$ g- T  u3 S5 B$ i9 D                }
& [* ^$ j) }$ [4 G- @
4 j) e; u. D, v* T* E2 I, C' K( V* W0 P$ p; I! o7 ?
        }
7 \8 X3 S8 c! \1 i, i) g- ^5 N% ]/ ]  \8 ^: g  g' e
        private void swarmSetp() {
/ c3 |& l0 G+ J2 w$ v6 C8 v                list.addLast(new Agent(Id));- N$ K0 ?3 l8 l1 A5 U2 w* }
                Id++;; f; i; \2 Q3 |* U" Q6 c$ p6 F  k  C
        }
$ M6 ~5 {0 x0 O5 a* G" h, F- ]& E5 H; ~* x
        public Activity activateIn(Swarm context) {
4 w' f8 A( p5 B                super.activateIn(context);
. i: y8 B* o* `  Q4 h& U8 U% p% K9 @  Z                schedule.activateIn(this);
) K( q% \2 ?) t; K; \" e                return getActivity();% x* T4 o- G4 r$ @3 ?
        }
9 t5 I  S$ n- W- R# \9 }) w) F" X
' z( S, I( T. D1 _& C9 w2 I        public static void main(String[] args) {! L! ]" y& v" F# m6 i6 ]. L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. ^% z4 n# \# {" J+ O& a                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 c+ W7 B& T: p8 _8 n
                swarms.buildObjects();
6 I% z+ W, @- d  e" D5 f) Y2 t                swarms.buildActions();$ a: G+ A% J* t& [2 ^
                swarms.activateIn(null).run();* z6 u- I: G9 D" \! S
        }
$ {! ]4 l2 f: X3 j* K. U# x0 Z! F7 w. {9 B2 F3 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-20 11:39 , Processed in 0.017800 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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