设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12236|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . _& [! ^6 _& `

4 r; f3 \1 K. s7 `; y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 g3 g+ p5 E: X$ D8 H$ b  r/ ]5 A6 e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" Q0 ?& m5 s9 s. |3 uswarm.SignatureNotFoundException
; N: [2 _6 \- r& x2 g        at swarm.Selector.<init>(Selector.java:76)
8 l/ w" O& }3 V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" I: \+ \: Q# m- J! A( k2 z: q2 z        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 @4 I/ t) x6 [" t1 H, A8 ^

1 Q$ H4 t) _6 F+ s; J" M4 f/ e7 G  [  z6 ~8 O6 ^1 W
import swarm.objectbase.SwarmImpl;; S! k$ @/ @( C: S0 e
import swarm.objectbase.Swarm;
  I8 B# ^* c/ }( l5 ^: n) `import swarm.activity.ScheduleImpl;' b9 Y) R( `3 y! ?4 R
import swarm.activity.Activity;! F2 V' G1 j1 Q$ ~
import swarm.activity.ActionGroupImpl;
7 I( n: }6 W& ]; bimport swarm.collections.ListImpl;
0 J; y6 i; c! n) @' N( o+ u3 }import swarm.defobj.Zone;
0 |; p* p- @7 x+ Wimport swarm.Globals;4 Z# x+ j* }: ]: s% Z
import swarm.Selector;% r+ g9 _1 O  B
import swarm.activity.ActionGroup; - d# p0 d) f, f- G  d: r2 `2 v
class Agent {
* @4 T$ e" B# z- T% \" W        char id;
1 r3 J3 W$ H5 M" s' i# q) q$ R# a8 e4 n
        Agent(char id) {$ }& |2 ^9 p  V& v/ x$ X& y
                this.id = id;* z* G: f& W: o4 K1 l
        }
6 `. K% m5 v2 s  V+ ^$ P& s( b: [1 U: U( }
        public void agentStep() {
( C& c0 U+ b) F% l3 I' }3 q) b4 }; d8 @                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 f$ T) W0 B( q) C! Y( b7 V! o  a+ b        }. g& L5 A! k3 @) u4 H
}
6 v: _1 H6 N. g5 e  s' U3 h( c7 i) B1 J1 P$ M7 d
public class ActionGroupDemo extends SwarmImpl {
# S6 Z- n( _4 R1 t        ScheduleImpl schedule;9 z( g/ ?6 B9 M0 `% u% Q3 a
        ActionGroupImpl actionGroup;
+ W# A1 G5 m# {5 ~& `2 i% p% n        ListImpl list;
+ J/ r2 s5 S+ b6 }5 f        char Id = 'a';
; q7 M  s9 c. _2 ?1 X& Z3 p1 L. r1 N1 U+ |
        ActionGroupDemo(Zone aZone) {
+ E6 F  N5 v- ?; j: S+ I                super(aZone);$ q. D& ^$ T& y
                list = new ListImpl(aZone);
5 w" {' h# j, G# s                swarmSetp();0 @% V! L& A6 ?7 R
                actionGroup = new ActionGroupImpl(aZone);
/ W4 O+ I3 }9 n2 P3 @% ~  N                schedule = new ScheduleImpl(aZone);
7 ~1 _# l7 v# F  V; z3 \( Q& |                try {( b" O2 M4 J0 D. L+ t. F- n0 Y# T
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 s# O. C( u) W' v9 w                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ j$ W8 W0 ?) \2 o* {                        
8 I& j# V1 J9 t, T! j3 E1 t( }: f5 n                        actionGroup.createActionForEach$message(list, agentSel);
% v' C+ ^! j5 F/ y8 M3 ?9 e! e                        actionGroup.createActionTo$message(this, swarmSel);. N2 e3 I! U. _6 `/ r5 B7 I
                        schedule.at$createAction(0, actionGroup);; Z) U- z( J+ Y* Y  M. K
                        schedule.at$createAction(1, actionGroup);) q5 N: e! W# l: o6 ?1 M3 l/ r
                        schedule.at$createAction(2, actionGroup);' ]: ?* d# T5 \& k

: |; S4 c5 t% a                } catch (Exception e) {8 j4 z6 l" O* s
                        e.printStackTrace(System.err);: {/ [  _  u0 T; ]5 @& _
                        //System.out.println(e);
$ d; C8 y( P1 |5 r7 i4 E, ?                        System.exit(1);
( F+ m/ `" @1 z* g                }$ B  K4 j! _) Y& N7 y5 C

, I7 L: _" V, N* t
8 L  |' L2 E  h$ O, }        }
4 n: }6 n) r5 N+ J. ?' s4 V8 B
1 W  R- x; B. S+ v4 A8 i        private void swarmSetp() {5 _  l% U% p! r* |1 E. W
                list.addLast(new Agent(Id));: ?9 g2 k/ @' c7 @  S( f
                Id++;" m4 r/ J" B) u
        }) z; [/ `8 I7 Z& L& E
9 ^# Y6 ?: h0 _9 I! v
        public Activity activateIn(Swarm context) {
1 V# u  y, a* m* y                super.activateIn(context);
6 i  y) t, G7 B' p                schedule.activateIn(this);; ^9 }( F) T. m
                return getActivity();
  \: L& v0 c9 L* y  V. i, y' ~6 a        }
- l0 W" S2 M) P0 G" Z( }$ ^0 ~8 C- q3 G
        public static void main(String[] args) {' Y- m( {* f& x6 L, F
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 N4 I% z) c2 T0 u  K! p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 C" t3 [$ L$ @( K, Y                swarms.buildObjects();0 y! ?$ V/ e5 g6 y; i
                swarms.buildActions();
* T  s4 T4 o; I7 P! k! u                swarms.activateIn(null).run();$ o8 d. R9 l' M+ Q* Z% B6 n
        }; R! P+ O9 g( x( O% z

* _( {3 [3 V$ O8 C$ V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-3 02:15 , Processed in 0.011972 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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