设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8132|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , E3 n( ]! v/ l4 |5 W$ L1 C
8 m; }' `0 \) {1 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. u2 j1 @9 t7 L0 A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 P! N; h; p$ M4 u5 H/ pswarm.SignatureNotFoundException
5 ?- P4 R# v& [1 B6 V$ x' k$ a8 M        at swarm.Selector.<init>(Selector.java:76)' w0 [  F" f9 r, b) m. M* c
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ [1 C! k5 d+ ]- [. z1 M: W( w$ z4 ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 i2 D2 v* N/ s; Y& n7 D2 h+ w* v( ?; B

1 y& K1 ]# ~( ~4 W9 v- himport swarm.objectbase.SwarmImpl;
0 v5 D/ i6 k+ d! y) @6 _import swarm.objectbase.Swarm;. X# m& E0 F5 |$ C$ F. x
import swarm.activity.ScheduleImpl;
# R. Q- s6 D1 m( Q4 M8 Q& b4 Y9 dimport swarm.activity.Activity;
  \( w4 r- \( K- l" `4 u7 kimport swarm.activity.ActionGroupImpl;% E, R: w: B* U# }" ?6 U* V. m
import swarm.collections.ListImpl;
  o4 n3 Z4 i, d9 |: \import swarm.defobj.Zone;
! x: H% S  k+ F1 I. V. S4 ?# Mimport swarm.Globals;0 H3 }# \5 q: {! @; t% l5 U
import swarm.Selector;
0 }+ b4 `! e: timport swarm.activity.ActionGroup; & B# T* ]/ d# t, ^
class Agent {
4 }8 x$ d8 Z; ^1 S7 H3 f' L" L        char id;+ K+ W; r: C$ x5 f& x& C4 {, h- G
) p' [# w4 c5 U. e5 q9 t
        Agent(char id) {5 o3 p3 O5 n* e- I  P' Q) q
                this.id = id;6 Z" Z: b6 a' R
        }* M( a# Z5 O' o; ]9 ?

# w, F  v- `' U# I6 Q        public void agentStep() {
% m3 h% d" F( t4 O3 q+ X                System.out.println(id + ":" + Globals.env.getCurrentTime());9 V' }/ o; i$ t
        }1 q8 v  a1 j( B6 K. c- _. D
}
1 P4 p  L( E% _4 c1 p" H  u7 {) i4 k5 q( c% a
public class ActionGroupDemo extends SwarmImpl {* w& o- W3 G( E) U8 c' I
        ScheduleImpl schedule;- w- q: C6 c1 s  _! i2 ]
        ActionGroupImpl actionGroup;
2 E. O1 G% `. @, g4 r* b        ListImpl list;
# A1 G. j! R5 R! [        char Id = 'a';
$ S5 M, l! v5 k8 Z/ B
) U9 o( u7 n' {0 M8 _5 P5 _        ActionGroupDemo(Zone aZone) {
0 X5 C% M/ Z% ]3 K% {* O! }5 t+ d                super(aZone);3 B# R5 e- {0 x: r
                list = new ListImpl(aZone);
+ Q! ?# d% w& |" w$ U                swarmSetp();
- S; X, i+ \$ U0 g6 b! a: r                actionGroup = new ActionGroupImpl(aZone);
) @3 k3 m9 H& B5 V% b- D                schedule = new ScheduleImpl(aZone);$ b4 M& j* F: b, L
                try {
- G7 c+ o( H( d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; }5 d# p  {4 L- l1 E! Y9 J9 A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! I+ r& H! B) _$ s/ p7 b9 g
                        0 [' O, W; O* t6 l9 `: u& P
                        actionGroup.createActionForEach$message(list, agentSel);. v8 E8 q" ^- [6 b! U7 L
                        actionGroup.createActionTo$message(this, swarmSel);$ ^: f7 i/ q$ @' M' y! I
                        schedule.at$createAction(0, actionGroup);7 h, f4 W( ?, V2 c; {6 }  S, n2 @
                        schedule.at$createAction(1, actionGroup);; }) l# j  G- _" X/ _; O+ A, ]
                        schedule.at$createAction(2, actionGroup);3 u5 j8 @9 ?7 j/ L

; R% q8 l+ t+ `; U! |                } catch (Exception e) {2 l6 }' Q  P7 A) f5 T+ r7 L+ E
                        e.printStackTrace(System.err);# p2 F) z  h0 @! m
                        //System.out.println(e);
$ H2 \9 K8 u; M* L                        System.exit(1);8 b7 s1 k: p" t. f6 [1 J
                }- Q# X7 _1 z8 ], I2 @% {
$ p6 O% b. \6 a) L

  t/ f6 M1 Y( }5 ]$ q        }
; C7 ^2 ?( e9 D  u, B- ^. L% l" V* s1 Q3 n5 h2 a$ h
        private void swarmSetp() {1 y7 T2 U" t8 O. U% ~# a+ I( _, g
                list.addLast(new Agent(Id));
; J( \2 C5 @: ^: O6 G# P                Id++;: R( k, e1 x& {
        }0 D; }7 J/ V7 o6 k$ ~6 o

9 t3 n# {- x+ b* B% W        public Activity activateIn(Swarm context) {& s8 H  u. J5 x" |/ I4 x$ ]
                super.activateIn(context);3 G5 ]& z# X; ?7 y! d1 C
                schedule.activateIn(this);
; ~, [5 x5 k* v! D2 }1 z                return getActivity();
7 ~# p, [( l/ e5 L        }
( S) U! [# ]; v! H* t8 l4 {. x. K2 c* R( X
        public static void main(String[] args) {
$ V: ]# ^2 k! u4 m0 s/ E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) q4 j; f' s5 d0 z6 C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* I1 v% \  |/ D" X7 t  X" N, ^8 `- N* X
                swarms.buildObjects();+ o% [* [& ?. j$ m
                swarms.buildActions();
: g8 X0 D3 D5 R# {; Q9 g                swarms.activateIn(null).run();7 ]1 ^1 Q. w% h# z  I/ c
        }
. w/ L* D# R- x+ ?0 L# I$ L9 \
3 I7 \6 {7 J6 I: k& Q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-31 11:52 , Processed in 0.015078 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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