设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8432|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + S& c* ]% n4 s' j8 Q
+ _% M' E' ?$ R& c# R; i& E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  r' f( S" k/ |1 e( j+ ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 \" }% |# q. s( H# G' @
swarm.SignatureNotFoundException
1 k; x4 A6 ~) K! \4 ~  J9 ^* j        at swarm.Selector.<init>(Selector.java:76)/ \, W6 ~& ?" M8 e2 D; q2 ?# p% r) g
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; N8 r0 [7 \/ ^& ]        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ y. o% E! }8 d' j: T# v/ a% Y* `% {9 ^+ O/ Q/ S  w

' j) _: {/ q, {$ ?5 O1 l' C3 Kimport swarm.objectbase.SwarmImpl;
4 D, b! ]$ v( ^7 [, p6 A! Y- @import swarm.objectbase.Swarm;
0 J6 N  a5 d/ U5 }import swarm.activity.ScheduleImpl;
/ w5 V1 p9 D' [9 himport swarm.activity.Activity;1 g# s$ b( }4 Q  t! W; L6 K
import swarm.activity.ActionGroupImpl;
7 y) L& c+ l2 }. g6 t- h4 @import swarm.collections.ListImpl;
* y# Y2 b0 h! E$ d2 yimport swarm.defobj.Zone;
6 m& c. V& T6 D" V# Kimport swarm.Globals;
& E' K! ]) U8 b$ O: L3 bimport swarm.Selector;$ |3 O3 }- S8 [& a
import swarm.activity.ActionGroup; ( f7 G+ y1 w- `! D
class Agent {+ H8 k* ~3 C% I: i9 i* [: f
        char id;
$ A: a. O6 r9 W/ c/ l
/ N0 R" u4 {  G) K        Agent(char id) {
4 G4 F* |$ T6 N( j+ A- ?8 `* _: O                this.id = id;
1 T8 x6 W% e6 }: V2 V% d' X: ?        }
1 J* z  ?5 ^" b) V$ g6 Z3 w1 I. B( I! W) |
        public void agentStep() {
6 e: ~# P7 u, o! h3 ?4 L                System.out.println(id + ":" + Globals.env.getCurrentTime());" o3 `, B: y- t. x. ]
        }; o3 [  r+ P0 X  ^3 U% G9 f! C
}
! w) ?# C( L" g) a5 X
( `1 O5 Q- O! o! t2 Wpublic class ActionGroupDemo extends SwarmImpl {
- k0 K# B5 n+ U  T1 z        ScheduleImpl schedule;
) L0 e: u1 U: {) S4 R        ActionGroupImpl actionGroup;
+ L7 ?& I' Q0 M3 {        ListImpl list;
7 X$ h& z* F% ^6 j        char Id = 'a';" E' B- Q+ d4 Q/ P- w: z

5 N8 s, E" Q  o: s( a0 e7 K! W        ActionGroupDemo(Zone aZone) {
$ B5 Y( ]4 e7 X                super(aZone);
( T5 p* `& Q2 U/ I' |                list = new ListImpl(aZone);( N4 t6 X( w. g; @
                swarmSetp();
8 V$ T& c( H* g  M) S                actionGroup = new ActionGroupImpl(aZone);
9 T5 |0 k" a5 n7 I; ^                schedule = new ScheduleImpl(aZone);1 `5 }! \7 x/ V- q; \$ C
                try {$ K+ E7 P* H8 D  y- W. q4 H# b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! u0 u: b' a1 G1 b% ]. N                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ {7 c$ K2 s4 O; E) p) @+ C- ?                        4 x9 U$ A  U- ^% N* t( y
                        actionGroup.createActionForEach$message(list, agentSel);
3 s6 }$ @+ M7 S  w! c                        actionGroup.createActionTo$message(this, swarmSel);2 [1 E( y0 G- y" B1 G9 m( z3 i
                        schedule.at$createAction(0, actionGroup);# w2 d- ]: F- e& v0 V! {
                        schedule.at$createAction(1, actionGroup);
. ]* u, f7 k/ b                        schedule.at$createAction(2, actionGroup);  z( i' q, ]$ K+ q4 e2 I2 `- l
; o) |* G9 v3 v3 C& @. T
                } catch (Exception e) {
  Y5 s* J2 w! r& Z! ^                        e.printStackTrace(System.err);
5 ?& h. N$ A6 g                        //System.out.println(e);
# e$ F5 Z2 q( N& V& H; M; Q                        System.exit(1);
) V# H/ o+ F1 e, N# S                }
! ~0 u: s% B9 U& F5 h- B# m7 r
# z  ?. ~" m8 t0 ?3 }- \
7 ?2 h+ l" ]# b! P/ Z        }
- l6 r1 n+ c- q6 G& l
  @8 \6 }* W! Y& I- ?" m        private void swarmSetp() {
. W, _" v5 H1 j; v                list.addLast(new Agent(Id));7 F" ^/ ]( g- p3 `, G3 k7 t
                Id++;
. Q  R$ m; f/ g) k7 a% e) R        }2 Z) E/ r+ l- s% k( t6 O4 r
" t* P5 W/ H# M- t: Y( n" e$ g! `/ S
        public Activity activateIn(Swarm context) {4 {2 b- n$ p8 J+ \# y; _
                super.activateIn(context);
4 W3 R! F+ S$ G$ f                schedule.activateIn(this);
  p8 d9 i+ j: z7 f- E                return getActivity();0 z8 }- `9 t  v3 v
        }
5 A$ }5 E& `0 Z! W4 E
  \3 }+ ?7 \4 O+ Y# ?        public static void main(String[] args) {
  W$ P4 ?# D6 c8 s) f                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; r8 p6 P1 y" f" q& C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% W/ Q. ~! ~$ M- i+ N' E* t                swarms.buildObjects();
6 r" E4 \7 g% w* k1 q5 t2 j                swarms.buildActions();
5 Q) Z2 x1 V& O6 |  V                swarms.activateIn(null).run();+ c0 p( |, x  n7 Z' M
        }
% K, W  _) u7 P# Z6 C
) R+ M1 B7 b# j, Q# x8 I3 D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-12 00:41 , Processed in 0.017453 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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