设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11279|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; x/ |6 P/ }# o% `" M
: T9 v# c( J5 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 G0 N' w* Z9 }) ^8 ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 ^+ C' l9 X7 u& T$ wswarm.SignatureNotFoundException
! l6 N. O; }5 Y; {: x% T        at swarm.Selector.<init>(Selector.java:76)
, |! M0 D) n) k3 I        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* U' g9 H7 Y( P3 U, i+ {* F! L        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 E: w6 k; r+ f! |2 h  b! `6 r$ L4 x% [

4 @) N6 {: _5 A( x+ g
8 [0 f" O) I6 {0 s# Q8 Pimport swarm.objectbase.SwarmImpl;
0 u: R- x: W( q# K" F, ^import swarm.objectbase.Swarm;
# j3 a6 ]' P( S' v) Ximport swarm.activity.ScheduleImpl;
) I" d8 f% M8 x- p$ G. Zimport swarm.activity.Activity;( B  \; ~4 N& u0 \( f
import swarm.activity.ActionGroupImpl;. |3 n3 L% G+ \- ]2 ~2 a- M5 E
import swarm.collections.ListImpl;  ~9 Q( N! s) G+ Y# H
import swarm.defobj.Zone; $ J/ ~& e) J7 G
import swarm.Globals;
6 e, z% r) F7 e2 yimport swarm.Selector;- D% t+ ]: |) q4 N7 w0 o% j
import swarm.activity.ActionGroup;
0 c; \/ n2 e" r4 \: a( g/ _class Agent {
; d3 K, t+ |, \8 p* w+ s        char id;
( G' \, n. y2 @: ~" {+ l8 b! ^' _: n, v  M; S( P  B
        Agent(char id) {
- c& D- y, y7 T) ~, d% \                this.id = id;
9 ?  O2 _' y3 C8 z4 r" `        }
  D0 v- s) b2 J1 J  V/ u# D8 Y, c; |
        public void agentStep() {, V( M' e( h2 H
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 T3 H6 j6 O% ^$ c        }( b9 E$ P& {9 V1 X2 K. \* P
}
9 W  h7 T* J: {, c) o: `- _7 J* S$ ?! B: n! q0 ?( l
public class ActionGroupDemo extends SwarmImpl {
# [% j: ^+ c4 V+ c7 N        ScheduleImpl schedule;
# T0 H7 C' {3 a% U        ActionGroupImpl actionGroup;
1 ]% j1 U: x9 z  N7 n        ListImpl list;& Z4 s& A/ ^' M
        char Id = 'a';
0 y" M- {! u6 l. t* @5 q9 |
8 ?' \$ e5 a% [1 O. j! w        ActionGroupDemo(Zone aZone) {+ P2 r2 ^- y& u! B
                super(aZone);, O6 T& t( x* V# J
                list = new ListImpl(aZone);
+ H1 M) r3 ^4 F; ^7 S! l                swarmSetp();/ v6 F, Y. d9 K
                actionGroup = new ActionGroupImpl(aZone);
% M& N9 H1 b8 Z" H: x$ d                schedule = new ScheduleImpl(aZone);+ _$ \1 Z* m) K! M
                try {
& |2 s7 S$ L  Q1 J1 ?                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 H; ]- I: n9 H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 T* ~8 I9 x6 Z2 E                        
& v0 g  o4 u2 i3 ]                        actionGroup.createActionForEach$message(list, agentSel);
. C' V2 p: C3 C! A# y3 E- T* r                        actionGroup.createActionTo$message(this, swarmSel);( b3 [) Y! {$ C3 e4 X
                        schedule.at$createAction(0, actionGroup);% d) H+ k8 V. E' I- v$ c% o1 `
                        schedule.at$createAction(1, actionGroup);( c/ l% I3 C( @: p
                        schedule.at$createAction(2, actionGroup);" S% q2 v( V( N0 Y- h8 c# q- N& x
. M7 Q4 @% R) _. c0 t
                } catch (Exception e) {/ B$ C) O4 d& }. {
                        e.printStackTrace(System.err);: T6 a% M& ^( p  a7 I) |6 d
                        //System.out.println(e);
5 m0 Y# @8 r8 j% w" d) q3 B) P                        System.exit(1);
0 K6 H) I% f+ |9 c: \/ i: F' K# [                }) y8 W, ]. M1 p& ~& }3 Z% D
8 h) b. s$ V; e# u0 _  N+ W: P

; O! F. b% b( Y" y! I; m- I        }
# I' @, k6 G. q
$ t+ T( D5 x9 N/ a6 j% k        private void swarmSetp() {$ X8 h  `( ^" J, u
                list.addLast(new Agent(Id));
0 k& h- w' j" c5 F: n! W                Id++;
6 Q+ Z9 ^0 N/ R1 j6 g& P0 D        }
7 s+ n# s0 o( ?( @$ g4 K0 w) K/ R3 F) I& e1 {0 q3 d, p
        public Activity activateIn(Swarm context) {9 P! e: o/ n9 o! `3 |$ o* p
                super.activateIn(context);# @$ h1 q* ]$ |; E5 X# e. ~
                schedule.activateIn(this);$ y/ g5 c' q7 D4 O
                return getActivity();! G" N3 D% K0 U/ p- R4 h5 ?7 y! r
        }; i! j' [; \7 f6 x  U

/ `( z+ ^6 G0 j0 x, x. W) Y        public static void main(String[] args) {
8 Z0 |- a+ R# a1 m  \                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% L+ `6 S. T1 K  e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 ~* d0 P2 d9 o8 B4 ^2 C                swarms.buildObjects();
4 h+ s" N: D9 s& B9 j8 X9 f                swarms.buildActions();
' B5 f/ ?2 k. f5 |/ n0 C# v                swarms.activateIn(null).run();
3 c( p0 ?5 \# N: M8 i/ v        }4 \) r8 F/ w% p* E  p7 P9 @% N! ?

' o+ z. x4 E2 I7 @}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-8 04:30 , Processed in 0.019905 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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