设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13358|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 |. E0 R# F' S  s# q; A
+ F  \$ y; c' j' y+ d$ g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  e& F) O' i" e  \& M4 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# w7 K2 n1 \+ o  R% [0 N
swarm.SignatureNotFoundException  a1 W- r) n6 E# l$ m
        at swarm.Selector.<init>(Selector.java:76)
5 P1 _5 `. m; Y6 [& ~0 [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 l( Z- P8 `9 m+ h        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- ]/ |, Y* X( I! S) @9 _# o; e# }. t, }" x  U: a
' N" L" l7 t# z; Y1 D
import swarm.objectbase.SwarmImpl;
; c" ~0 L+ Z9 d) P, X4 A6 ^import swarm.objectbase.Swarm;
1 B# l- k6 I" n' o+ o$ himport swarm.activity.ScheduleImpl;
6 b; n+ j1 P# u1 P) {import swarm.activity.Activity;  N6 T0 W2 `1 [+ I* y% F& L% O% r
import swarm.activity.ActionGroupImpl;9 O6 M! ?: N& ]0 a* M
import swarm.collections.ListImpl;
# ?2 J1 g3 r' Q8 l9 O2 K, pimport swarm.defobj.Zone;
- M" i" [+ x4 Kimport swarm.Globals;
, y/ A8 p  L! O5 A( Ximport swarm.Selector;
3 N8 l8 n1 L1 u0 U, J+ k; e& Fimport swarm.activity.ActionGroup;
' B, L. ]6 y- Z6 U" Wclass Agent {9 k1 Y% H  R' k6 |: j
        char id;
" |/ ~: |, H3 z7 M' I4 F
0 `9 E! A& |0 }        Agent(char id) {
; [4 T( u' G* l* n2 H# x8 m9 L                this.id = id;. O9 E+ I$ b$ ]) {, d9 ]$ H
        }
" q4 _- x$ P1 q: V! b. H' T: B) U3 B7 f$ D$ P8 B
        public void agentStep() {
2 X5 \# S+ I5 v  K                System.out.println(id + ":" + Globals.env.getCurrentTime());
& v3 J! e$ w7 l        }
6 S/ e2 [8 t: K. z. V}
" _, k8 O* L! b- a0 @, C9 Z  O  C; y7 I4 W2 U: e
public class ActionGroupDemo extends SwarmImpl {3 z( L8 a8 D& z; j
        ScheduleImpl schedule;
% q; o) c2 p6 @% y        ActionGroupImpl actionGroup;
8 D% k9 h6 J: U        ListImpl list;' y+ b, Q  {) U: ~
        char Id = 'a';1 \# M4 P8 y" W6 C: J
, p! z$ v0 k. t  q5 D
        ActionGroupDemo(Zone aZone) {
/ H5 D. v9 U' h& c! o                super(aZone);
$ @0 N% L* l0 W5 x3 E/ N                list = new ListImpl(aZone);( m1 H! Y% m/ a1 f$ y; I& }
                swarmSetp();
" G+ h  a, d7 f* I" t                actionGroup = new ActionGroupImpl(aZone);/ d& [4 c  @  w) o4 J
                schedule = new ScheduleImpl(aZone);
, v* P6 Q$ W4 l& t9 H                try {
- A" r' D. o2 p4 Z" m3 p0 |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, A* y; H: _$ F' R* Z  C+ {5 x6 t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* G4 `" c% X% r" |7 C% F
                        $ I( n3 Z' W# h* O8 T, y
                        actionGroup.createActionForEach$message(list, agentSel);
/ l5 d% H' ?9 f( l8 U; `                        actionGroup.createActionTo$message(this, swarmSel);1 R% f6 z8 F6 I. |; i
                        schedule.at$createAction(0, actionGroup);
+ u+ B( ~3 J8 a! Q1 X- U' U8 r                        schedule.at$createAction(1, actionGroup);
3 y- d! p) H+ x1 v8 R. h7 N) d                        schedule.at$createAction(2, actionGroup);
) i% z) W8 k$ I7 R: N: W& O1 T9 Q9 ^+ \: z9 l0 H2 D' S9 @
                } catch (Exception e) {) Q: ~, B5 R+ O6 ?2 E. B/ `
                        e.printStackTrace(System.err);  ^2 p" O% M- L$ k) O
                        //System.out.println(e);
  L' r. H1 B" n( c8 ]                        System.exit(1);
% F" K- h) t! s% l5 P/ z+ m                }  c' j: g* {& B5 v- A6 g

# a8 n: K' X9 i$ g+ ]* V/ }4 ~
  ^( w6 S/ }* N        }
! l) w! ~) A1 A" e3 o# R  P/ u. E! j: G# J0 N# S1 N6 u
        private void swarmSetp() {0 `# @1 S' Z3 M+ b( v( ?  t9 I* }$ D
                list.addLast(new Agent(Id));8 @& K+ U' e2 Q1 D
                Id++;/ N# m) I0 `: e4 d( U& i
        }
+ a  C/ b* O4 x) n
) N+ }! o4 r4 ^) t% u! P        public Activity activateIn(Swarm context) {, e- l/ o5 {6 H
                super.activateIn(context);0 b- N: @$ T5 L. q1 t7 s
                schedule.activateIn(this);6 e9 q' @* m5 W$ c% b: T* e
                return getActivity();1 h+ a: `6 D. b& w
        }& ~0 Z, v" z8 f+ p

% Z9 l4 r2 X5 T        public static void main(String[] args) {  S, X" ]* r6 [+ X- i5 b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 ^$ y3 r9 A# M, N4 k  e
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" o" R$ B5 d2 f- u
                swarms.buildObjects();9 D; G1 C- m( A1 T" T
                swarms.buildActions();
# x+ F: S! _; R! i  Q! Y                swarms.activateIn(null).run();
! Z0 K! u5 o7 d& F* l" A        }3 t7 S4 B% o4 k8 {
& ^5 e- s& A$ H. _* j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-4 21:07 , Processed in 0.017044 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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