设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6263|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - q6 s) j- F( h  r' J

" `: d, X, {! d5 R9 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 {1 X( @! z* L0 n: [' m' J. M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. r' [$ I( J. m' r5 h
swarm.SignatureNotFoundException
: y5 _! {1 Z  i) C3 C4 u        at swarm.Selector.<init>(Selector.java:76)- Y1 Z6 A: ]4 ~' Y% v/ e/ u, d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 J, }/ d+ W7 j2 n5 n# O6 k7 d        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 Y7 J0 C/ F( X% n: e9 |% ~  S; F

* C7 B% y$ t7 @; x2 ]9 S+ }* s! u, r$ `
import swarm.objectbase.SwarmImpl;
7 h3 V/ z5 v$ O/ D$ W! o) ^4 b) H8 vimport swarm.objectbase.Swarm;
, S4 p2 c5 b  ^4 o) cimport swarm.activity.ScheduleImpl;/ P3 M- V# b5 p: Q$ Y$ |
import swarm.activity.Activity;- G  H6 \* `  t$ @$ V. F; u/ R
import swarm.activity.ActionGroupImpl;
. w* Y6 T7 J7 u  u- g( U: [0 Q. \import swarm.collections.ListImpl;
2 ^. ~: A' g' Q* Wimport swarm.defobj.Zone; ) @: E& g. H( i# h8 _; W) ?
import swarm.Globals;
3 a1 I  k: }: c8 P! k' R' mimport swarm.Selector;) }; O, A+ f. p0 y) |1 g
import swarm.activity.ActionGroup;
' r6 O$ p" F. r' w* W6 pclass Agent {
  Y' [$ k- P; M3 [! L: ~4 x        char id;$ O* }& O1 i) o3 C. @9 K2 n+ B
1 ~: W3 z1 C8 K; e& m1 D
        Agent(char id) {7 t* m3 Y1 Z) f4 H
                this.id = id;
' b/ Q% e' t0 |/ {+ r' V        }
9 b; t2 x: L. p8 d! J" D- M: ?" L+ P4 ~9 x3 }
        public void agentStep() {
* A7 C, h, u! o8 l                System.out.println(id + ":" + Globals.env.getCurrentTime());( D+ @0 _/ j% v! h, d! _" \) y7 f
        }
0 O' E9 H7 K5 H! k: Q0 T}
2 H+ r/ R& S8 N4 v' ^7 M4 P3 E: I8 ^
public class ActionGroupDemo extends SwarmImpl {8 C# B1 |( ?; A
        ScheduleImpl schedule;
+ l* J# h7 h/ d6 d) V0 m        ActionGroupImpl actionGroup;$ X& ]( ~5 e" v. I' Z. x
        ListImpl list;
/ g# r% f& I$ x        char Id = 'a';
2 a3 v& j, y9 W2 N* s' i
$ W0 o8 Q1 @2 v' u' @. W2 Z! s4 O% X7 `' ]        ActionGroupDemo(Zone aZone) {
' M' w8 X, e. x# t& V) a                super(aZone);
1 O9 Z) n2 ]9 P: f* c) g                list = new ListImpl(aZone);
3 g  z1 N$ ^# }* X7 R# b# }" I/ P                swarmSetp();
/ }4 H  O; ?( u" D; s% W                actionGroup = new ActionGroupImpl(aZone);& }9 `2 j( ~/ l3 V5 X  }
                schedule = new ScheduleImpl(aZone);
4 L8 [+ X  m  ^& T+ V4 s                try {
  w1 y4 N" ?' }% s# q5 r, F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 ~$ G8 `0 V* b+ T# Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 v- f- o. I/ V; S% w4 ?5 I9 f                        
7 v6 I6 O. A: r. o7 C                        actionGroup.createActionForEach$message(list, agentSel);
- @& q+ C* Y/ h. }, ^: {; p                        actionGroup.createActionTo$message(this, swarmSel);
/ f" Y, a( N% N% H5 l3 s5 W                        schedule.at$createAction(0, actionGroup);
/ U: @% U" K4 W9 W6 I7 [                        schedule.at$createAction(1, actionGroup);
+ h, S; q( Y/ S$ x( ^                        schedule.at$createAction(2, actionGroup);
6 i$ ?* t" M! i9 [" l% u! W+ `- w, a3 O
                } catch (Exception e) {
  }- f4 C( ^6 Z3 a% Z9 y                        e.printStackTrace(System.err);3 p1 p  Q* b2 W$ M
                        //System.out.println(e);+ N+ A& P* P) r+ O
                        System.exit(1);9 L* ~* h( Q1 B( a3 F
                }) K/ |7 ]8 l$ M6 H! u% z
' T9 c* s( J" z

0 @. _3 \5 B* o, _. d! E7 A        }0 X% {3 T& X# x# {; ]
# {9 b& x2 C% A
        private void swarmSetp() {0 H% [& |. R9 s5 D' i% V3 i: @
                list.addLast(new Agent(Id));
4 r6 N5 W% q0 ?2 {: ^; H# V                Id++;
3 v$ e) C2 w8 d* F1 r% e  S        }
1 e* I7 S6 l! v6 U: k. j& C7 z
( [$ u7 E3 j9 l' L* ]7 B# `        public Activity activateIn(Swarm context) {
5 e' H  d, }; }                super.activateIn(context);3 E, v1 _; m9 @$ _- A1 j' O6 ~8 l
                schedule.activateIn(this);
5 I* s. O2 u1 O+ ^8 v$ u- B                return getActivity();: F0 S- B9 o' F% V0 ]
        }
) C( v" g! |1 H8 H
. n6 e6 F: N/ z9 v        public static void main(String[] args) {, w, y' u6 u' r0 A) D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* Z1 Q1 m6 U8 r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) Y6 h8 `- V0 j! w- ~. X
                swarms.buildObjects();' t# c5 q8 g, {& e3 }
                swarms.buildActions();
  P# B( Q: A$ ^                swarms.activateIn(null).run();+ b7 N9 ?3 A  w+ Y+ ?+ N
        }/ r7 O" \: y" n* |8 |7 b3 @- A

. Y3 x/ X1 D; A; C8 s$ n}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-23 02:39 , Processed in 0.023265 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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