设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8727|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 }; i8 w# x8 A6 [+ c6 I
- W; h; s# C$ _( s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) L% ~' c" s- Y' r8 I* v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 ~  o% _* l% i2 cswarm.SignatureNotFoundException0 P: J; \5 f1 Z5 ?, u; i  X
        at swarm.Selector.<init>(Selector.java:76)6 T; d2 j- r* \# R( ?6 o5 b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); H6 }6 ?! |2 Q7 s) Y
        at ActionGroupDemo.main(ActionGroupDemo.java:67): b) `1 _% Q6 V8 p' H3 Q' u" |" ?
! a, _9 C2 |6 ?4 S- |( T

+ e" c* E: i6 nimport swarm.objectbase.SwarmImpl;5 }8 m* `+ d  g+ q  f$ T* f; R
import swarm.objectbase.Swarm;
1 k: x/ ~* U, A; o1 zimport swarm.activity.ScheduleImpl;+ h8 V! n, B" e: _
import swarm.activity.Activity;% H4 g0 R6 S0 X$ K; q
import swarm.activity.ActionGroupImpl;: z/ x6 t6 j) H8 s& @5 K
import swarm.collections.ListImpl;! o3 t0 i7 j- }! \6 `6 v  U! h& J
import swarm.defobj.Zone;
8 I$ q0 B. M- C6 k% A5 m) _4 Simport swarm.Globals;5 j% @) }' q8 w
import swarm.Selector;
, E+ Q; y" }! Z9 v* q5 h9 `/ mimport swarm.activity.ActionGroup; 0 [- Y+ w5 T6 j9 A- \. n- ~
class Agent {
' z8 L8 C1 f3 N+ l4 A        char id;! M/ M/ J& A/ U2 e- O
7 r, y+ \) ^% O; M
        Agent(char id) {
2 J6 [8 R. }  O8 t; X                this.id = id;
( n8 ~1 h& e) m! n. W        }
$ I* Q6 H& q' [; P9 f+ W3 ?, r7 h! R3 }, ^+ _, s$ d
        public void agentStep() {- G6 S1 y0 r. y9 {& M! w
                System.out.println(id + ":" + Globals.env.getCurrentTime());6 i2 O8 V3 f1 d  L
        }
# Q3 v- H8 C1 f" |' S3 F- b}  t" p) Q, \7 V% ?0 u) r
& C* n" J% p: ], ^  A0 U7 Y
public class ActionGroupDemo extends SwarmImpl {0 d9 o3 _7 e6 s0 H7 }) B3 I9 z
        ScheduleImpl schedule;
% R2 P4 s7 z$ e2 R  j# X        ActionGroupImpl actionGroup;  @2 K4 s0 C; l9 m2 x
        ListImpl list;4 _! O, V) I, T; h/ x
        char Id = 'a';
- m0 x8 n4 d0 [7 I" h3 {3 j2 ~5 E% b: n# Z4 t6 ~$ F/ l8 z
        ActionGroupDemo(Zone aZone) {
' R1 V+ r- ~  @* D                super(aZone);4 ~- `" k6 l, ]' u; p# k5 F$ h
                list = new ListImpl(aZone);$ v0 z* B% N0 |+ Y: }! N# u
                swarmSetp();
  g! N  `# F2 i! k+ r2 ^                actionGroup = new ActionGroupImpl(aZone);1 ]; j! Y1 o8 d7 v. ?2 {0 d
                schedule = new ScheduleImpl(aZone);
8 k" s# S6 y) @! d6 g6 O' @                try {
- v) c% f$ I, L; Z3 }0 Q5 X                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( `; Z' y9 ?: U9 w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ W) Y" a6 j& W9 ]$ ]                        
# }! ^5 x$ e" W( W  y3 B; G4 x                        actionGroup.createActionForEach$message(list, agentSel);; w! T! M( x& J) U
                        actionGroup.createActionTo$message(this, swarmSel);) `" Y4 x& S. t& g7 [( r0 D
                        schedule.at$createAction(0, actionGroup);
! M0 r% s: `" N0 ?' s                        schedule.at$createAction(1, actionGroup);
* f2 K3 `5 X" i2 q6 g1 W0 e                        schedule.at$createAction(2, actionGroup);
. ?+ |; o* J8 u
* i$ r6 I9 j. M$ e8 ?. `                } catch (Exception e) {2 @! c& k6 ^7 K$ q+ C
                        e.printStackTrace(System.err);/ D1 x( z6 ?" \* R% h0 ~& Z  n
                        //System.out.println(e);
& t! s8 u/ c+ s/ l  x, M                        System.exit(1);
8 }! O# a/ g) D) G  r1 u% r6 H. B                }
7 z1 o" n: \* T  n7 d/ v* Q* X4 b$ V

3 ?5 Z0 r" Y- s5 ]& c8 K        }
' N1 Q+ Z( r; P  T* q' ^: t# ~8 p; i1 i. j
        private void swarmSetp() {
$ G* ~' d3 F+ O                list.addLast(new Agent(Id));  B& m- D3 _* N
                Id++;
5 \! I4 Z4 X9 C+ p/ G& |        }" z4 a, |1 l: ^4 a% H, A

$ p# G3 `7 P. ^! l  d        public Activity activateIn(Swarm context) {
1 L  D0 s( t4 c5 P& \                super.activateIn(context);. D: u: r0 X" s; _) y  R
                schedule.activateIn(this);9 ~/ T( I- }8 z: o4 K
                return getActivity();4 }' g6 c1 w* h6 y( N" |% u
        }2 L4 z0 S3 {, {/ A

" y  u# n+ O/ T, i! g        public static void main(String[] args) {
: S- l1 ^; m9 }0 o8 v0 Q1 h" S                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# Q3 Z9 W3 q9 h; q8 U" s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- k0 ~* F9 s# M% @5 p) p3 S2 \
                swarms.buildObjects();
. z- K( Y) V9 a  ^5 a; b- E                swarms.buildActions();
  E4 I" o4 y6 h1 e" ~& ^4 }                swarms.activateIn(null).run();
# a  y4 x9 M& S8 G3 N4 Z  ~        }+ ~" u% z; r) T$ @% p- v
! }% T3 O' ?! m' t' j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-20 19:02 , Processed in 0.016549 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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