设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5083|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. f( v* V$ c$ v; B' E- z: B/ y* e9 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ r7 ]( v7 G1 E, m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 t  `& h. |" ]& B) F0 H
swarm.SignatureNotFoundException8 S3 ?' k2 q- _
        at swarm.Selector.<init>(Selector.java:76)$ m! J- ?% ~7 E  J2 _! Z0 ?- t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 r8 O- @( h: ~# W  h7 p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) ]4 v' S8 e! r/ Z, Q  u$ `4 x* y0 Q* c; I# g9 i( f, X

  R( d+ Y, E9 Bimport swarm.objectbase.SwarmImpl;2 X- w3 }& G! Y, b2 u& q$ b; \
import swarm.objectbase.Swarm;! I% [  F# J6 q4 s. X+ u( P
import swarm.activity.ScheduleImpl;* U, ]; @7 x& |  S: _' i
import swarm.activity.Activity;  V( \  L5 l' h1 w& \
import swarm.activity.ActionGroupImpl;! N& z0 Z+ x* D" T
import swarm.collections.ListImpl;9 b' V+ y0 r, b9 ]* `7 B
import swarm.defobj.Zone;
) b0 g$ _7 \, t$ D% \import swarm.Globals;
  x- v* d) X: l" eimport swarm.Selector;
# H% z( v& I/ M7 I; _% D( T6 q, vimport swarm.activity.ActionGroup;
8 R0 I+ o6 x5 Uclass Agent {
3 G) C5 ^# N7 n. [5 d! f' q% M        char id;
+ H  U2 N% R6 L3 s/ d- c. s$ h" D- R/ v
        Agent(char id) {
  A* w1 i8 `) Q                this.id = id;
# g% l) |; |8 a( J1 o        }/ Q7 E) Y6 \7 o4 d- ?& H: w
; D  Y, A5 B& E6 W6 h  n, ^
        public void agentStep() {( ^) K# A& K" `2 ]; @  G
                System.out.println(id + ":" + Globals.env.getCurrentTime());. y2 a/ F" f7 s. i  S& G) N7 l( T
        }* u1 p9 F0 [# R, h$ X
}2 E5 |2 w& |( w
& }  j3 E& p2 V* V4 G' Z6 l" M
public class ActionGroupDemo extends SwarmImpl {; x- {& ~0 }5 J; T3 p
        ScheduleImpl schedule;2 |7 J4 ]4 ^3 V! S. w  t& [
        ActionGroupImpl actionGroup;+ _3 }6 n; l. r" F+ N1 n8 g
        ListImpl list;
  p* S7 t3 Z" t! N9 Y% v) j* M( V+ ]4 N; H        char Id = 'a';
7 C0 z9 `2 M' U9 P3 ]! X% U8 J: P2 c  A. P
        ActionGroupDemo(Zone aZone) {% A6 a7 Y4 S+ \7 v
                super(aZone);9 Z- [* o2 y# J; r  c: m! [# D
                list = new ListImpl(aZone);0 u9 u# A5 r% v# N5 G4 o* T
                swarmSetp();- |' \) V" O" [; [8 z
                actionGroup = new ActionGroupImpl(aZone);
; B4 X: Z; @( |) ]7 x* O                schedule = new ScheduleImpl(aZone);
) a1 q7 Z# x! E( u& Z& r: a                try {: l1 o1 ~4 x# G, ?3 V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ |8 f$ |$ W+ h* R% X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, ?9 w. a# f( ]# o7 d4 M
                        ( D) L; n0 ?% }7 [* S
                        actionGroup.createActionForEach$message(list, agentSel);
5 i7 e3 x: j' Z) U                        actionGroup.createActionTo$message(this, swarmSel);: u, z) ~7 h& [9 h! Q2 Z
                        schedule.at$createAction(0, actionGroup);# f, P  \& k* o4 V  o/ \
                        schedule.at$createAction(1, actionGroup);
" O, ]5 j7 l% u& ]6 T                        schedule.at$createAction(2, actionGroup);
8 I! c7 m" [! j! Z0 T6 U8 m* W1 |2 [$ f2 a! m3 G
                } catch (Exception e) {. x8 G4 z/ z, O+ N! U
                        e.printStackTrace(System.err);" Z& j: E. v2 C# [
                        //System.out.println(e);
) A" t/ a! m" f/ i9 \: e                        System.exit(1);5 r" o, Y4 `& E
                }
) |% s! c+ P+ Z% B7 L  U! w& `3 b
5 ?2 Q' ~  I8 t% h, ]
1 F9 K* P0 u- u        }
0 H. j. M2 v8 @, s- t5 }, e6 Q7 j
        private void swarmSetp() {
9 }& a4 G4 \" ^* B2 o' C+ O$ c  X2 K                list.addLast(new Agent(Id));2 u- }+ B0 A- J* q
                Id++;6 T) S) j, O5 j. e* M$ B& y
        }; p5 I4 u' l% |* K/ w  o
, V' ^* y0 z. ~7 d, f( {
        public Activity activateIn(Swarm context) {
' ^' f! H9 l3 U) n, g7 U                super.activateIn(context);3 [, [2 T9 R( X2 Q1 [" W' l: a
                schedule.activateIn(this);. E# o7 _1 Q9 p6 d% \# i
                return getActivity();
0 P: r7 n+ E5 |2 m- X1 [% o        }3 _( C, |  Q& _- P

- Z# h5 u+ l  z8 v3 b4 }, d        public static void main(String[] args) {  Q! d, ?* P3 ?5 |+ ^% U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 [0 R: T$ u6 i# p. ]
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 ?8 d* P/ v! K- ]9 V! d                swarms.buildObjects();
4 ]" b9 ?. a1 b: I) B# g                swarms.buildActions();
5 y% [( T4 k7 K1 b5 S5 h9 K                swarms.activateIn(null).run();
6 z$ n/ T: N5 p: ?3 h. i        }9 k) ^; M' f9 r; D4 m! K

# [& m% p" q7 h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-24 08:21 , Processed in 0.016766 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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